
using System;

namespace LastFMGenNHibernate.EN.LastFM
{
        public class EventoEN
        {
        /**
         *
         */

        private int id;

        /**
         *
         */

        private String nombre;

        /**
         *
         */

        private String descripcion;

        /**
         *
         */

        private System.Collections.Generic.IList<LastFMGenNHibernate.EN.LastFM.ComentarioEN> comentario;

        /**
         *
         */

        private System.Collections.Generic.IList<LastFMGenNHibernate.EN.LastFM.UsuarioRegistradoEN> usuarioRegistrado;





        public virtual int Id { get { return id; } set { id = value;  } }


        public virtual String Nombre { get { return nombre; } set { nombre = value;  } }


        public virtual String Descripcion { get { return descripcion; } set { descripcion = value;  } }


        public virtual System.Collections.Generic.IList<LastFMGenNHibernate.EN.LastFM.ComentarioEN> Comentario { get { return comentario; } set { comentario = value;  } }


        public virtual System.Collections.Generic.IList<LastFMGenNHibernate.EN.LastFM.UsuarioRegistradoEN> UsuarioRegistrado { get { return usuarioRegistrado; } set { usuarioRegistrado = value;  } }



        public EventoEN()
        {
        }



        public EventoEN(int id, String nombre, String descripcion, System.Collections.Generic.IList<LastFMGenNHibernate.EN.LastFM.ComentarioEN> comentario, System.Collections.Generic.IList<LastFMGenNHibernate.EN.LastFM.UsuarioRegistradoEN> usuarioRegistrado)
        {
                this.init (id, nombre, descripcion, comentario, usuarioRegistrado);
        }


        public EventoEN(EventoEN evento)
        {
                this.init (evento.Id, evento.Nombre, evento.Descripcion, evento.Comentario, evento.UsuarioRegistrado);
        }

        private void init (int id, String nombre, String descripcion, System.Collections.Generic.IList<LastFMGenNHibernate.EN.LastFM.ComentarioEN> comentario, System.Collections.Generic.IList<LastFMGenNHibernate.EN.LastFM.UsuarioRegistradoEN> usuarioRegistrado)
        {
                this.Id = id;


                this.Nombre = nombre;

                this.Descripcion = descripcion;

                this.Comentario = comentario;

                this.UsuarioRegistrado = usuarioRegistrado;
        }

        public override bool Equals (object obj)
        {
                if (obj == null)
                        return false;
                EventoEN t = obj as EventoEN;
                if (t == null)
                        return false;
                if (Id.Equals (t.Id))
                        return true;
                else
                        return false;
        }

        public override int GetHashCode ()
        {
                int hash = 13;

                hash += (null == Id ? 0 : this.Id.GetHashCode ());
                return hash;
        }
        }
}
